From e3af57e2672374fb96ca6902a22b52bc9841fee0 Mon Sep 17 00:00:00 2001 From: Mgabr90 <123825043+Mgabr90@users.noreply.github.com> Date: Tue, 3 Jun 2025 20:14:34 +0300 Subject: [PATCH] Fix log level validation error preventing server startup - Add import os statement - Set LOG_LEVEL environment variable to 'INFO' by default - Pass explicit log_level='INFO' parameter to FastMCP constructor This fixes the ValueError: Invalid log level: info. Expected one of: ['DEBUG', 'INFO', 'WARNING', 'ERROR', 'CRITICAL'] that prevents the server from starting when FastMCP receives lowercase log levels. --- pymupdf4llm_mcp/app.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pymupdf4llm_mcp/app.py b/pymupdf4llm_mcp/app.py index 2a62581..acbf2fc 100644 --- a/pymupdf4llm_mcp/app.py +++ b/pymupdf4llm_mcp/app.py @@ -1,3 +1,4 @@ +import os from pathlib import Path from typing import Annotated, Any @@ -5,7 +6,9 @@ from mcp.server.fastmcp import FastMCP from pydantic import Field -mcp = FastMCP("pymupdf4llm-mcp") +# Fix: Set environment variable and explicit log level to prevent validation error +os.environ.setdefault('LOG_LEVEL', 'INFO') +mcp = FastMCP("pymupdf4llm-mcp", log_level='INFO') @mcp.tool( @@ -73,4 +76,4 @@ def convert_pdf_to_markdown( return { "error": f"Failed to convert PDF to markdown: {e!s}", "success": False, - } + } \ No newline at end of file