from fastmcp import FastMCP
from matrix_shop_bot.db import Data
import os
+import uvicorn
+
+from starlette.middleware import Middleware
+from starlette.middleware.cors import CORSMiddleware
+import uvicorn
+
MY_IP=os.environ.get('MY_IP')
mcp = FastMCP("Shop Bot")
@mcp.tool
-def add_item(name: str) -> 'list[str]':
- return Data().add_item(name)
+def add_item(name: str) -> str:
+ return '\n'.join(Data().add_item(name))
+
+# Define custom middleware
+custom_middleware = [
+ Middleware(CORSMiddleware, allow_origins=["*"],
+ allow_methods=["*"],
+ allow_headers=["*"],),
+]
+
+if __name__ == "__main__":
+ http_app = mcp.http_app(transport="streamable-http",path="/",middleware=custom_middleware)
+ uvicorn.run(http_app, host=MY_IP, port=9000)
+
+
#@mcp.tool
#def buy(items:str) -> 'list[str]':
#def list_purchases(store: str) -> 'list[str]':
# return Data().list_purchases(store)
-if __name__ == "__main__":
- mcp.run(transport="http", host=MY_IP, port=9000)
+# if __name__ == "__main__":
+# mcp.run(transport="http", host=MY_IP, port=9000)