UNPKG

@digitalsamba/embedded-api-mcp-server

Version:

Digital Samba Embedded API MCP Server - Model Context Protocol server for Digital Samba's Embedded API

63 lines 2.35 kB
/** * Room Management Tools Module * * This module provides room management tools for the Digital Samba MCP Server. * It implements tools for creating, updating, deleting rooms and generating tokens. * * @module tools/room-management */ import { Tool } from "@modelcontextprotocol/sdk/types.js"; /** * Register all room management tools * * @returns Array of MCP Tool definitions */ export declare function registerRoomTools(): Tool[]; /** * Execute a room management tool * * This function handles the execution of room-related tools such as creating, * updating, deleting rooms, and generating access tokens. It manages API client * creation and error handling for all room operations. * * @param {string} toolName - Name of the tool to execute * @param {any} args - Tool arguments specific to each tool * @param {any} request - MCP request object containing session context * @param {Object} options - Execution options * @param {string} options.apiUrl - Digital Samba API base URL * @param {any} [options.apiCache] - Cache instance for API responses * @param {boolean} [options.enableConnectionManagement] - Enable connection pooling * @param {boolean} [options.enableTokenManagement] - Enable automatic token refresh * @param {boolean} [options.enableResourceOptimization] - Enable resource optimization * @param {number} [options.connectionPoolSize] - Size of connection pool * @returns {Promise<Object>} Tool execution result with content array * * @example * // Create a room * const result = await executeRoomTool('create-room', { * name: 'Team Meeting', * privacy: 'private', * maxParticipants: 50 * }, request, { apiUrl: 'https://api.digitalsamba.com/api/v1' }); * * @example * // Generate access token * const result = await executeRoomTool('generate-token', { * roomId: 'room-123', * options: { * u: 'John Doe', * role: 'moderator' * } * }, request, { apiUrl: 'https://api.digitalsamba.com/api/v1' }); * * @since 1.0.0 */ export declare function executeRoomTool(toolName: string, args: any, request: any, options: { apiUrl: string; apiCache?: any; enableConnectionManagement?: boolean; enableTokenManagement?: boolean; enableResourceOptimization?: boolean; connectionPoolSize?: number; }): Promise<any>; //# sourceMappingURL=index.d.ts.map