Files
auto-stock/mcp-server/config.py
2026-02-22 17:23:20 +09:00

50 lines
1.4 KiB
Python

import os
from dotenv import load_dotenv
load_dotenv()
class Settings:
# API Keys
ANTHROPIC_API_KEY = os.getenv("ANTHROPIC_API_KEY", "")
GEMINI_API_KEY = os.getenv("GEMINI_API_KEY", "")
# AI Provider Selection (claude or gemini)
AI_PROVIDER = os.getenv("AI_PROVIDER", "gemini")
# Server Settings
MCP_SERVER_HOST = os.getenv("MCP_SERVER_HOST", "0.0.0.0")
MCP_SERVER_PORT = int(os.getenv("MCP_SERVER_PORT", "8001"))
# Database
DATABASE_URL = os.getenv("DATABASE_URL", "")
REDIS_URL = os.getenv("REDIS_URL", "")
# Logging
LOG_LEVEL = os.getenv("LOG_LEVEL", "INFO")
# Claude Settings
CLAUDE_MODEL = os.getenv("CLAUDE_MODEL", "claude-3-5-sonnet-20241022")
# Gemini Settings
GEMINI_MODEL = os.getenv("GEMINI_MODEL", "gemini-2.0-flash")
# Common AI Settings (AI_PROVIDER에 따라 자동 선택)
MAX_TOKENS = int(os.getenv(
"GEMINI_MAX_TOKENS" if AI_PROVIDER == "gemini" else "CLAUDE_MAX_TOKENS",
"1024"
))
TEMPERATURE = float(os.getenv(
"GEMINI_TEMPERATURE" if AI_PROVIDER == "gemini" else "CLAUDE_TEMPERATURE",
"0.3"
))
# Token Optimization Settings
TOKEN_SAVE_MODE = os.getenv("TOKEN_SAVE_MODE", "false").lower() == "true"
NEWS_LIMIT = int(os.getenv("NEWS_LIMIT", "5"))
CHART_DAYS = int(os.getenv("CHART_DAYS", "100"))
JSON_COMPACT = os.getenv("JSON_COMPACT", "false").lower() == "true"
settings = Settings()