|
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 |
|
|
|
model = InferenceClientModel() |
|
|
|
try: |
|
mcp_client = MCPClient( |
|
{"url": "https://abidlabs-mcp-tools.hf.space/gradio_api/mcp/sse"} |
|
) |
|
|
|
tools = mcp_client.get_tools() |
|
agent = CodeAgent(tools=[*tools], model=model) |
|
|
|
def call_agent(message, history): |
|
return str(agent.run(message)) |
|
|
|
demo = gr.ChatInterface( |
|
fn=call_agent, |
|
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: |
|
mcp_client.stop() |
|
|