mcp_client.py hinzugefügt

This commit is contained in:
2026-07-04 20:48:51 +00:00
parent c8624137a8
commit cda7691ebd
+38
View File
@@ -0,0 +1,38 @@
import contextlib
from mcp import ClientSession
from mcp.client.streamable_http import streamable_http_client
from config import MCP_URL
class MCPClient:
def __init__(self):
self.session = None
self.exit_stack = contextlib.AsyncExitStack()
async def connect(self):
"""
Verbindung zum OpenHAB MCP Server
"""
transport = await self.exit_stack.enter_async_context(
streamable_http_client(MCP_URL)
)
read, write, _ = transport
self.session = await self.exit_stack.enter_async_context(
ClientSession(read, write)
)
await self.session.initialize()
return self.session
async def list_tools(self):
return await self.session.list_tools()
async def call_tool(self, name, args):
return await self.session.call_tool(name, args)
async def close(self):
await self.exit_stack.aclose()