File size: 1,390 Bytes
07dea3b
17fd164
1ef9b46
 
 
 
 
ab5957c
1ef9b46
ab5957c
 
 
17fd164
5afd05c
4cd4269
5afd05c
 
 
7f569cf
5afd05c
 
 
 
 
 
 
 
 
 
685b513
5afd05c
 
17fd164
 
bfe138c
 
07dea3b
17fd164
cb1c654
 
 
 
 
 
 
07dea3b
93b5658
 
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
42
43
44
45
46
47
48
import json
import gradio as gr
import os

from mcp import StdioServerParameters
from smolagents import InferenceClientModel, CodeAgent, ToolCollection, MCPClient

with MCPClient(
    {"url": "https://mdeevan-mcp-sentiment.hf.space/gradio_api/mcp/sse"}
) as tools:
    # Tools from the remote server are available
    print("\n".join(f"{t.name}: {t.description}" for t in tools))

mcp_client = MCPClient(
    {"url": "https://mdeevan-mcp-sentiment.hf.space/gradio_api/mcp/sse"} # This is the MCP Client we created in the previous section
)
tools = mcp_client.get_tools()

model = InferenceClientModel(token=os.getenv("HF_TOKEN"))
agent = CodeAgent(tools=[*tools], model=model)

demo = gr.ChatInterface(
    fn=lambda message, history: str(agent.run(message)),
    type="messages",
    examples=["today weather is nice"],
    title="Agent with MCP Tools",
    description="This is a simple agent that uses MCP tools to answer questions."
)


# if __name__ == "__main__":
demo.launch()




# Create gradio interface

# demo = gr.Interface(
#     fn          = sentiment_analysis,
#     inputs      = gr.Textbox(placeholder="Enter trext to analyze sentiments ..."),
#     outputs     = gr.Textbox(),
#     title       = "Text Sentiment Analysis",
#     description = "Analyze the sentiment of text using TextBlob"
# )

# # Launch the interface and MCP server
#     demo.launch(mcp_server=True)