From f75f93f8d9f761364fcf58e60c65cdb25ca6f114 Mon Sep 17 00:00:00 2001 From: hanishkvc Date: Sun, 7 Dec 2025 19:36:07 +0530 Subject: [PATCH] SimpleSallap:SimpleMCP:SendMcp expects dataclass and uses asdict --- tools/server/public_simplechat/local.tools/simplemcp.py | 5 ++++- tools/server/public_simplechat/local.tools/toolcall.py | 6 ++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/tools/server/public_simplechat/local.tools/simplemcp.py b/tools/server/public_simplechat/local.tools/simplemcp.py index 1072aa8abc..b3e5282040 100644 --- a/tools/server/public_simplechat/local.tools/simplemcp.py +++ b/tools/server/public_simplechat/local.tools/simplemcp.py @@ -19,12 +19,14 @@ import ssl import traceback import json from typing import Any +from dataclasses import asdict import tcpdf as mTCPdf import tcweb as mTCWeb import toolcall as mTC import config as mConfig + gMe = mConfig.Config() @@ -92,7 +94,8 @@ class ProxyHandler(http.server.BaseHTTPRequestHandler): # Add CORS for browser fetch, just in case self.send_header('Access-Control-Allow-Origin', '*') self.end_headers() - self.wfile.write(json.dumps(body).encode('utf-8')) + data = asdict(body) + self.wfile.write(json.dumps(data).encode('utf-8')) def mcp_toolscall(self, oRPC: Any): """ diff --git a/tools/server/public_simplechat/local.tools/toolcall.py b/tools/server/public_simplechat/local.tools/toolcall.py index c73b20e116..618b91182e 100644 --- a/tools/server/public_simplechat/local.tools/toolcall.py +++ b/tools/server/public_simplechat/local.tools/toolcall.py @@ -111,9 +111,11 @@ class ToolCall(): return ToolCallMeta("function", tcf) +MCPTLTools: TypeAlias = list[ToolCallMeta] + @dataclass class MCPTLResult: - tools: list[ToolCallMeta] + tools: MCPTLTools @dataclass class MCPToolsList: @@ -131,7 +133,7 @@ class ToolManager(): self.toolcalls[fName] = tc def meta(self): - lMeta: list[ToolCallMeta]= [] + lMeta: MCPTLTools = [] for tcName in self.toolcalls.keys(): lMeta.append(self.toolcalls[tcName].meta()) return lMeta