import gradio as gr import os from mcp import StdioServerParameters from smolagents import InferenceClientModel, CodeAgent, ToolCollection, MCPClient # MCP Clinet in Gradio to be deplayed to Hugging Face Spaces try: # connect to the MCP server and get the tools that can be used by the agent mcp_client = MCPClient( { "url": "https://abidlabs-mcp-tool-http.hf.space/gradio_api/mcp/sse" # the mcp client previously created } ) tools = mcp_client.get_tools() # create a simple agent that uses the tools to answer questions model = InferenceClientModel(token=os.getenv("HF_TOKEN")) agent = CodeAgent(tools=[*tools], model=model) # gradio interface that uses the MCP client to connect to the MCP server and ansers questions # using the agent with the 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.", ) demo.launch() # for public link launch with share=True finally: mcp_client.dusconnect()