Skip to main content
Glama
johannhartmann

MCP Code Analysis Server

language_loader.py2.48 kB
"""Load language configurations from settings.""" from src.config import settings from src.logger import get_logger from src.parser.language_config import LanguageRegistry logger = get_logger(__name__) def load_language_configuration() -> None: """Load language configuration from settings and update registry.""" # Get configured languages from settings configured_languages = settings.get("parser.languages", ["python"]) logger.info("Loading language configuration for: %s", configured_languages) # Update registry to mark configured languages as enabled for lang_name in configured_languages: lang_config = LanguageRegistry.get_language(lang_name) if lang_config: # For now, only Python has a parser available # This will be updated as we add more parsers if lang_name == "python": lang_config.parser_available = True logger.info("Enabled parser for language: %s", lang_name) else: logger.warning( "Language %s is configured but parser not yet implemented", lang_name, ) else: logger.warning("Unknown language in configuration: %s", lang_name) # Log summary available_langs = LanguageRegistry.get_available_languages() available_exts = LanguageRegistry.get_available_extensions() logger.info( "Language support initialized: %d languages, %d extensions", len(available_langs), len(available_exts), ) logger.debug("Available languages: %s", available_langs) logger.debug("Available extensions: %s", sorted(available_exts)) def get_configured_extensions() -> set[str]: """Get file extensions for configured languages.""" configured_languages = settings.get("parser.languages", ["python"]) extensions = set() for lang_name in configured_languages: lang_config = LanguageRegistry.get_language(lang_name) if lang_config and lang_config.parser_available: extensions.update(lang_config.extensions) return extensions def is_language_enabled(language: str) -> bool: """Check if a language is enabled in configuration.""" configured_languages = settings.get("parser.languages", ["python"]) return language.lower() in [lang.lower() for lang in configured_languages] # Initialize language configuration on module import load_language_configuration()

Latest Blog Posts

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/johannhartmann/mcpcodeanalysis'

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