/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. * @generated-id: 2784dd48e82a */ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { CloudinaryEnvConfigCore } from "../core.js"; import { SDKOptions } from "../lib/config.js"; import type { ConsoleLogger } from "./console-logger.js"; import { createRegisterPrompt } from "./prompts.js"; import { createRegisterResource, createRegisterResourceTemplate, } from "./resources.js"; import { MCPScope } from "./scopes.js"; import { createRegisterTool, MCPToolAnnotationFilter, registerDynamicTools, } from "./tools.js"; import { tool$streamingProfilesCreateStreamingProfile } from "./tools/streamingProfilesCreateStreamingProfile.js"; import { tool$streamingProfilesDeleteStreamingProfile } from "./tools/streamingProfilesDeleteStreamingProfile.js"; import { tool$streamingProfilesGetStreamingProfile } from "./tools/streamingProfilesGetStreamingProfile.js"; import { tool$streamingProfilesGetStreamingProfiles } from "./tools/streamingProfilesGetStreamingProfiles.js"; import { tool$streamingProfilesUpdateStreamingProfile } from "./tools/streamingProfilesUpdateStreamingProfile.js"; import { tool$transformationsCreateTransformation } from "./tools/transformationsCreateTransformation.js"; import { tool$transformationsDeleteTransformation } from "./tools/transformationsDeleteTransformation.js"; import { tool$transformationsGetTransformation } from "./tools/transformationsGetTransformation.js"; import { tool$transformationsListTransformations } from "./tools/transformationsListTransformations.js"; import { tool$transformationsUpdateTransformation } from "./tools/transformationsUpdateTransformation.js"; import { tool$triggersCreateTrigger } from "./tools/triggersCreateTrigger.js"; import { tool$triggersDeleteTrigger } from "./tools/triggersDeleteTrigger.js"; import { tool$triggersListTrigger } from "./tools/triggersListTrigger.js"; import { tool$triggersTestTrigger } from "./tools/triggersTestTrigger.js"; import { tool$triggersUpdateTrigger } from "./tools/triggersUpdateTrigger.js"; import { tool$uploadMappingsCreateUploadMapping } from "./tools/uploadMappingsCreateUploadMapping.js"; import { tool$uploadMappingsDeleteUploadMapping } from "./tools/uploadMappingsDeleteUploadMapping.js"; import { tool$uploadMappingsListUploadMappings } from "./tools/uploadMappingsListUploadMappings.js"; import { tool$uploadMappingsUpdateUploadMapping } from "./tools/uploadMappingsUpdateUploadMapping.js"; import { tool$uploadPresetsCreateUploadPreset } from "./tools/uploadPresetsCreateUploadPreset.js"; import { tool$uploadPresetsDeleteUploadPreset } from "./tools/uploadPresetsDeleteUploadPreset.js"; import { tool$uploadPresetsGetUploadPreset } from "./tools/uploadPresetsGetUploadPreset.js"; import { tool$uploadPresetsListUploadPresets } from "./tools/uploadPresetsListUploadPresets.js"; import { tool$uploadPresetsUpdateUploadPreset } from "./tools/uploadPresetsUpdateUploadPreset.js"; export function createMCPServer(deps: { logger: ConsoleLogger; allowedTools?: string[] | undefined; dynamic?: boolean | undefined; scopes?: MCPScope[] | undefined; annotationFilter?: MCPToolAnnotationFilter | undefined; getSDK?: () => CloudinaryEnvConfigCore; serverURL?: string | undefined; security?: SDKOptions["security"] | undefined; cloud_name?: SDKOptions["cloud_name"] | undefined; serverIdx?: SDKOptions["serverIdx"] | undefined; region?: SDKOptions["region"] | undefined; host?: SDKOptions["host"] | undefined; }) { const server = new McpServer({ name: "CloudinaryEnvConfig", version: "0.6.1", }); const getClient = deps.getSDK || (() => new CloudinaryEnvConfigCore({ security: deps.security, cloud_name: deps.cloud_name, serverURL: deps.serverURL, serverIdx: deps.serverIdx, region: deps.region, host: deps.host, debugLogger: deps.logger.level === "debug" ? { log: (...args) => console.log(...args), group: (...args) => console.group(...args), groupEnd: (...args) => console.groupEnd(...args), } : undefined, })); const scopes = new Set(deps.scopes); const allowedTools = deps.allowedTools && new Set(deps.allowedTools); const [tool, tools, toolMap] = createRegisterTool( deps.logger, server, getClient, scopes, allowedTools, deps.dynamic, deps.annotationFilter, ); const resource = createRegisterResource( deps.logger, server, getClient, scopes, ); const resourceTemplate = createRegisterResourceTemplate( deps.logger, server, getClient, scopes, ); const prompt = createRegisterPrompt(deps.logger, server, getClient, scopes); const register = { tool, resource, resourceTemplate, prompt }; void register; // suppress unused warnings tool(tool$transformationsListTransformations); tool(tool$transformationsGetTransformation); tool(tool$transformationsCreateTransformation); tool(tool$transformationsUpdateTransformation); tool(tool$transformationsDeleteTransformation); tool(tool$uploadPresetsCreateUploadPreset); tool(tool$uploadPresetsListUploadPresets); tool(tool$uploadPresetsGetUploadPreset); tool(tool$uploadPresetsUpdateUploadPreset); tool(tool$uploadPresetsDeleteUploadPreset); tool(tool$uploadMappingsListUploadMappings); tool(tool$uploadMappingsCreateUploadMapping); tool(tool$uploadMappingsUpdateUploadMapping); tool(tool$uploadMappingsDeleteUploadMapping); tool(tool$triggersListTrigger); tool(tool$triggersCreateTrigger); tool(tool$triggersUpdateTrigger); tool(tool$triggersDeleteTrigger); tool(tool$triggersTestTrigger); tool(tool$streamingProfilesCreateStreamingProfile); tool(tool$streamingProfilesGetStreamingProfiles); tool(tool$streamingProfilesGetStreamingProfile); tool(tool$streamingProfilesUpdateStreamingProfile); tool(tool$streamingProfilesDeleteStreamingProfile); if (deps.dynamic) { registerDynamicTools(deps.logger, server, getClient, toolMap, scopes); } return { server, tools }; }