FullMt5McpByLeo/mt5_mcp_by_leo/Def.py

50 lines
1.8 KiB
Python
Raw Permalink Normal View History

2026-04-28 12:26:25 -05:00
#+------------------------------------------------------------------+
#| Imports |
#+------------------------------------------------------------------+
2026-05-03 13:18:10 -05:00
import mcp_mt5_conection
from typing import Dict, Any
2026-04-28 12:26:25 -05:00
import json
import argparse
2026-05-03 13:18:10 -05:00
from argparse import Namespace
2026-04-28 12:26:25 -05:00
#+------------------------------------------------------------------+
#| Args |
#+------------------------------------------------------------------+
2026-05-03 13:18:10 -05:00
g_parser : argparse.ArgumentParser = argparse.ArgumentParser()
g_parser.add_argument("--config", type=str, default="")
g_parser.add_argument("--config_encodig", type=str, default="utf-8")
g_args : Namespace = g_parser.parse_args()
# Leemos config
g_config : dict = None
with open(g_args.config, "r", encoding=g_args.config_encodig) as f:
g_config = json.load(f)
# Config esperada:
"""
{
"general_config" : {
"port" : 9999,
"host" : "localhost"
"mode" : "fast_mcp"
}
"fast_mcp" : {
"name" : "FastMcpServer"
}
"http" : {
"http_port" : 8000,
"name" : "HTTP Server",
"tools_namespace" : "tools"
}
}
"""
2026-04-28 12:26:25 -05:00
#+------------------------------------------------------------------+
#| General |
#+------------------------------------------------------------------+
2026-05-03 13:18:10 -05:00
g_conection : mcp_mt5_conection.CMt5McpConection = mcp_mt5_conection.CMt5McpConection(g_config["general_config"]["host"],g_config["general_config"]["port"])
g_registrador : mcp_mt5_conection.CToolRegister = mcp_mt5_conection.CToolRegisterMCP(g_config,g_conection) if g_config["general_config"]["mode"] == "fast_mcp" else mcp_mt5_conection.CToolRegisterFastApi(g_config,g_conection)
2026-04-28 12:26:25 -05:00