diff --git a/core/auth.py b/core/auth.py index d3599e9..648d006 100644 --- a/core/auth.py +++ b/core/auth.py @@ -27,11 +27,14 @@ class AuthManager: if not self.master_api_key: # Generate a random key if not provided (dev mode) self.master_api_key = secrets.token_urlsafe(32) + self._is_temporary_key = True logger.warning( "No MASTER_API_KEY environment variable found. " - f"Generated temporary key: {self.master_api_key[:8]}***{self.master_api_key[-4:]} " + f"Generated temporary key: {self.master_api_key} " "(set MASTER_API_KEY in .env for production use)" ) + else: + self._is_temporary_key = False # Project-specific keys (future feature) self.project_keys = {} diff --git a/core/dashboard/routes.py b/core/dashboard/routes.py index d95161b..889776c 100644 --- a/core/dashboard/routes.py +++ b/core/dashboard/routes.py @@ -334,6 +334,7 @@ async def dashboard_login_page(request: Request) -> Response: "t": t, "error": error, "next_url": next_url, + "version": _get_project_version(), }, ) @@ -1984,6 +1985,19 @@ def get_registered_plugins() -> list: return plugins +def _get_project_version() -> str: + """Read version from pyproject.toml.""" + try: + toml_path = os.path.join(os.path.dirname(os.path.dirname(TEMPLATES_DIR)), "pyproject.toml") + with open(toml_path) as f: + for line in f: + if line.strip().startswith("version"): + return line.split("=")[1].strip().strip('"').strip("'") + except Exception: + pass + return "3.0.0" + + def get_about_info() -> dict: """Get about information.""" import sys @@ -1998,7 +2012,7 @@ def get_about_info() -> dict: pass return { - "version": "1.0.0", + "version": _get_project_version(), "mcp_version": "2024-11-05", "python_version": f"{sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro}", "tools_count": tools_count, diff --git a/core/templates/dashboard/login.html b/core/templates/dashboard/login.html index ec1dcb1..f5b6ca3 100644 --- a/core/templates/dashboard/login.html +++ b/core/templates/dashboard/login.html @@ -108,13 +108,20 @@ -
+
برای دسترسی به داشبورد به Master API Key نیاز دارید.
+کلید API خود را در متغیر محیطی MASTER_API_KEY تنظیم کنید.
Enter your MASTER_API_KEY to access the dashboard.
Don't have one? Set it in your .env file, or check the server logs for the temporary key.
+ + {% if lang == 'fa' %}راهنمای شروع{% else %}Setup Guide{% endif %} + +
+- MCP Hub v3.0.0 + MCP Hub v{{ version|default('3.0.0') }}