feat(utils): 添加数据源ID获取功能
新增get_datasource_id函数用于获取数据源ID环境变量, 并在环境配置中添加datasource_id字段, 同时在main.py中设置默认的数据源ID环境变量。
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -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',
|
||||
|
||||
@@ -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()
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user