From 79374b0d2f69cdead023c781312a786999e5004b Mon Sep 17 00:00:00 2001 From: yuanzhipeng <2501363769@qq.com> Date: Sun, 4 Jan 2026 10:20:18 +0800 Subject: [PATCH] =?UTF-8?q?feat(utils):=20=E6=B7=BB=E5=8A=A0=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E6=BA=90ID=E8=8E=B7=E5=8F=96=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增get_datasource_id函数用于获取数据源ID环境变量, 并在环境配置中添加datasource_id字段, 同时在main.py中设置默认的数据源ID环境变量。 --- .../lzwcai_mcpskills_analyzeWorkOrder/main.py | 7 ++++--- .../utils/__init__.py | 3 ++- .../utils/env_config.py | 18 ++++++++++++++++++ lzwcai_mcpskills_analyzeWorkOrder/main.py | 1 + 4 files changed, 25 insertions(+), 4 deletions(-) diff --git a/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/main.py b/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/main.py index efc904c..2e95c81 100644 --- a/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/main.py +++ b/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/main.py @@ -7,12 +7,12 @@ import logging try: from .utils import load_json, generate_tool_name, generate_input_schema from .utils import get_skill_by_id, DataSourceAPIClient, process_skill_response, test_sql_with_schema - from .utils import get_database_id, get_skill_id, get_env_config + from .utils import get_database_id, get_datasource_id, get_skill_id, get_env_config from .utils.logger_config import logger_config except ImportError: from utils import load_json, generate_tool_name, generate_input_schema from utils import get_skill_by_id, DataSourceAPIClient, process_skill_response, test_sql_with_schema - from utils import get_database_id, get_skill_id, get_env_config + from utils import get_database_id, get_datasource_id, get_skill_id, get_env_config from utils.logger_config import logger_config from mcp.server.models import InitializationOptions @@ -207,7 +207,7 @@ async def handle_call_tool( if tool_item: request_data = { - "datasourceId": tool_item.get("datasourceId"), + "datasourceId": get_datasource_id(), "businessName": tool_item.get("businessName"), "businessDescription": tool_item.get("businessDescription"), "sqlTemplate": tool_item.get("sqlTemplate"), @@ -304,6 +304,7 @@ async def async_main(): # 输出环境配置信息 env_config = get_env_config() mcp_logger.info(f"环境配置 - Database ID: {env_config['database_id']}") + mcp_logger.info(f"环境配置 - Datasource ID: {env_config['datasource_id']}") mcp_logger.info(f"环境配置 - Skill ID: {env_config['skill_id']}") mcp_logger.info(f"环境配置 - Backend Base URL: {env_config['backend_base_url']}") mcp_logger.info("=" * 60) diff --git a/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/utils/__init__.py b/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/utils/__init__.py index 4fdc6f7..3df2b44 100644 --- a/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/utils/__init__.py +++ b/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/utils/__init__.py @@ -4,7 +4,7 @@ from .json_helper import load_json from .name_helper import generate_tool_name from .schema_helper import generate_input_schema, validate_input_schema from .api_client import DataSourceAPIClient, get_skill_by_id, process_skill_response, test_sql_with_schema -from .env_config import get_database_id, get_skill_id, get_backend_base_url, get_env_config, set_env_variable +from .env_config import get_database_id, get_datasource_id, get_skill_id, get_backend_base_url, get_env_config, set_env_variable __all__ = [ 'load_json', @@ -16,6 +16,7 @@ __all__ = [ 'process_skill_response', 'test_sql_with_schema', 'get_database_id', + 'get_datasource_id', 'get_skill_id', 'get_backend_base_url', 'get_env_config', diff --git a/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/utils/env_config.py b/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/utils/env_config.py index 2b87425..585b0a6 100644 --- a/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/utils/env_config.py +++ b/lzwcai_mcpskills_analyzeWorkOrder/lzwcai_mcpskills_analyzeWorkOrder/utils/env_config.py @@ -20,6 +20,22 @@ def get_database_id(default: str = "29") -> str: return os.environ.get("databaseId", default) +def get_datasource_id(default: str = "") -> str: + """ + 获取数据源ID环境变量 + + Args: + default: 默认值(默认为 "") + + Returns: + str: 数据源ID + + Environment Variables: + datasourceId: 数据源ID + """ + return os.environ.get("datasourceId", default) + + def get_skill_id(default: str = "") -> str: """ 获取技能ID环境变量 @@ -62,11 +78,13 @@ def get_env_config() -> dict: Example: config = get_env_config() print(config['database_id']) # 输出: "29" + print(config['datasource_id']) # 输出: "" print(config['skill_id']) # 输出: "" print(config['backend_base_url']) # 输出: "http://lzwcai-demp-corp-manager:8086" """ return { "database_id": get_database_id(), + "datasource_id": get_datasource_id(), "skill_id": get_skill_id(), "backend_base_url": get_backend_base_url() } diff --git a/lzwcai_mcpskills_analyzeWorkOrder/main.py b/lzwcai_mcpskills_analyzeWorkOrder/main.py index c1e4b6e..ef71819 100644 --- a/lzwcai_mcpskills_analyzeWorkOrder/main.py +++ b/lzwcai_mcpskills_analyzeWorkOrder/main.py @@ -5,6 +5,7 @@ Runs the MCP server for SQL query execution import os os.environ["databaseId"] = "19" +os.environ["datasourceId"] = "19" os.environ["backendBaseUrl"] = "http://192.168.11.24:8088" if __name__ == "__main__": # Import and run the actual MCP server