import gradio as gr from mcp.client.stdio import StdioServerParameters from smolagents import InferenceClientModel, CodeAgent, ToolCollection from smolagents.mcp_client import MCPClient from dotenv import load_dotenv load_dotenv() mcp_client = None try: # Connect to the MCP Sentiment Server mcp_client = MCPClient({"url": "https://abetavarez-gradio-mcp-sentiment.hf.space/gradio_api/mcp/sse"}) # get the tools that we can use to answer questions. tools = mcp_client.get_tools() # Now that we have the tools, we can create a simple agent that uses them to answer questions. model = InferenceClientModel() agent = CodeAgent(model=model, tools=[*tools]) demo = gr.ChatInterface( fn=lambda message, history: str(agent.run(message)), type="messages", examples=["Prime factorization of 68"], title="Agent with MCP Tools", description="This is a simple agent that uses MCP tools to answer questions.", # messages=[], ) demo.launch() finally: if mcp_client is not None: mcp_client.disconnect()