import gradio as gr from mcp.client.stdio import StdioServerParameters from smolagents import ToolCollection, CodeAgent from smolagents import CodeAgent, InferenceClientModel from smolagents.mcp_client import MCPClient try: mcp_client = MCPClient( {"url": "https://csabakecskemeti-mcp-sentiment.hf.space/gradio_api/mcp/sse"} ) tools = mcp_client.get_tools() mcp_client2 = MCPClient( {"url": "https://abidlabs-mcp-tools.hf.space/gradio_api/mcp/sse"}, ) tools2 = mcp_client2.get_tools() model = InferenceClientModel() agent = CodeAgent(tools=[*tools, *tools2], model=model) def call_agent(message, history): return str(agent.run(message)) demo = gr.ChatInterface( fn=lambda message, history: str(agent.run(message)), type="messages", examples=["Prime factorization of 68", "What is the sentiment of 'I feel shit'"], title="Agent with MCP Tools", description="This is a simple agent that uses MCP tools to answer questions.", # messages=[], ) demo.launch() finally: mcp_client.close()