Skip to main content
Glama

Context Optimizer MCP Server

factory.ts1.22 kB
/** * LLM provider factory and abstractions * * Provides unified interface for different LLM providers (Gemini, Claude, OpenAI) */ import { BaseLLMProvider, LLMResponse } from './base'; import { GeminiProvider } from './gemini'; import { ClaudeProvider } from './claude'; import { OpenAIProvider } from './openai'; export interface LLMProvider { processRequest(prompt: string, model?: string, apiKey?: string): Promise<LLMResponse>; } export class LLMProviderFactory { private static providers: Map<string, BaseLLMProvider> = new Map(); static createProvider(providerName: string): LLMProvider { // Use singleton pattern for providers to avoid recreating them if (!this.providers.has(providerName)) { switch (providerName) { case 'gemini': this.providers.set(providerName, new GeminiProvider()); break; case 'claude': this.providers.set(providerName, new ClaudeProvider()); break; case 'openai': this.providers.set(providerName, new OpenAIProvider()); break; default: throw new Error(`Unknown provider: ${providerName}`); } } return this.providers.get(providerName)!; } }

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/malaksedarous/context-optimizer-mcp-server'

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