@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
TypeScript
/**
* 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