-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.py
More file actions
31 lines (25 loc) · 827 Bytes
/
server.py
File metadata and controls
31 lines (25 loc) · 827 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
import pandas as pd
from fastmcp import FastMCP
class MCPServer:
def __init__(self):
self.mcp = FastMCP("Data_loader_server")
print('MCP_Server_Loaded')
self._register_tools()
def _register_tools(self):
# An MCP tool
@self.mcp.tool()
async def load_data(data_path):
print("Server tool being called")
try:
df = pd.read_csv(data_path)
return df
except Exception as e:
print(f"❌ Error loading data: {e}")
return None
def runner(self):
print("MCP Loader")
# transport: Literal["stdio", "streamable-http", "sse"]
self.mcp.run(transport="stdio")
if __name__ == '__main__':
loader_server = MCPServer()
loader_server.runner()