We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/pandeussilvae/mcp-odoo-panda'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
"""
MCP (Model Context Protocol) logging configuration module.
This module provides logging configuration for MCP servers.
"""
import logging
from typing import Dict, Any, List, Optional
def setup_logging(config: Optional[Dict[str, Any]] = None) -> None:
"""
Set up logging configuration.
Args:
config: Optional logging configuration dictionary
"""
if config is None:
config = {
'level': 'INFO',
'format': '%(asctime)s - %(name)s - %(levelname)s - %(message)s',
'handlers': [
{
'type': 'StreamHandler',
'level': 'INFO'
}
]
}
# Set up root logger
root_logger = logging.getLogger()
root_logger.setLevel(getattr(logging, config['level'].upper()))
# Remove existing handlers
for handler in root_logger.handlers[:]:
root_logger.removeHandler(handler)
# Add configured handlers
for handler_config in config['handlers']:
handler_type = handler_config['type']
handler_level = getattr(logging, handler_config['level'].upper())
if handler_type == 'StreamHandler':
handler = logging.StreamHandler()
elif handler_type == 'FileHandler':
handler = logging.FileHandler(handler_config['filename'])
else:
raise ValueError(f"Unsupported handler type: {handler_type}")
handler.setLevel(handler_level)
formatter = logging.Formatter(config['format'])
handler.setFormatter(formatter)
root_logger.addHandler(handler)
# Set up MCP logger
mcp_logger = logging.getLogger('mcp')
mcp_logger.setLevel(getattr(logging, config['level'].upper()))