fmarky's picture
fix sse transport for MCPClient
2b9bb7b
import gradio as gr
import os
from dotenv import load_dotenv
from smolagents import InferenceClientModel, CodeAgent, MCPClient
load_dotenv()
mcp_client = None
try:
mcp_client = MCPClient(
{
"url": "https://fmarky-sentiment-analysis-mcp-server.hf.space/gradio_api/mcp/sse",
"transport": "sse",
}
)
tools = mcp_client.get_tools()
model = InferenceClientModel(token=os.getenv("HUGGINGFACE_API_TOKEN"))
agent = CodeAgent(
tools=[*tools],
model=model,
additional_authorized_imports=["json", "ast", "urllib", "base64"],
)
demo = gr.ChatInterface(
fn=lambda message, history: str(agent.run(message)),
type="messages",
examples=["Analyze the sentiment of the following text 'This is awesome'"],
title="Agent with MCP Tools",
description="This is a simple agent that uses MCP tools to answer questions.",
)
demo.launch()
finally:
if mcp_client is not None:
mcp_client.disconnect()