File size: 1,132 Bytes
ecf6369
 
 
 
06393bc
ecf6369
 
 
 
b8ee906
15cfe38
 
 
 
b8ee906
 
ecf6369
 
930b592
ecf6369
 
 
1873fe7
ecf6369
 
 
 
 
 
 
b8ee906
ecf6369
 
 
 
 
22103b7
 
ecf6369
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
import gradio as gr

from mcp.client.stdio import StdioServerParameters
from smolagents import ToolCollection, CodeAgent
from smolagents import CodeAgent, ToolCallingAgent, InferenceClientModel
from smolagents.mcp_client import MCPClient

model = InferenceClientModel()

test_question = """Analyze YouTube video at https://www.youtube.com/watch?v=AP81nzJLS-c.
Use 480p quality with 5-second frame interval.
Answer the following questions:
1) This is a fragment from what film?
2) What was the last sentence spoken?
"""

try:
    mcp_client = MCPClient(
        {"url": "https://artyomboyko-aura-ai-scan.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=[test_question],
        title="Agent with MCP Tools",
        description="This is a simple agent that uses MCP tools to answer questions.",
    )

    demo.launch()
except Exception as e:
    raise e
finally:
    mcp_client.stop()