mcp-client / app.py
snowcoader's picture
updated server-mcp token
7ea964d
Raw
History Blame Contribute Delete
1.36 kB
import gradio as gr
import os
from smolagents import InferenceClientModel, CodeAgent, MCPClient
# Load .env file for local development (ignored in production)
from dotenv import load_dotenv
load_dotenv() # This will be ignored if .env doesn't exist (like in HF Spaces)
try:
mcp_client = MCPClient(
{
"url": "https://snowcoader-mcp-sentiment.hf.space/gradio_api/mcp/sse",
"transport": "sse"
}
)
tools = mcp_client.get_tools()
# Get token from environment - try both possible env var names
token = os.getenv("HUGGINGFACE_API_TOKEN") or os.getenv("HF_TOKEN")
if not token:
print("Warning: No Hugging Face API token found. Some models may not work.")
model = InferenceClientModel() # Will use default/free tier
else:
model = InferenceClientModel(token=token)
agent = CodeAgent(tools=[*tools], model=model, additional_authorized_imports=["json", "ast", "urllib", "base64"])
demo = gr.ChatInterface(
fn=lambda message, history: str(agent.run(message)),
type="messages",
examples=["Analyze the sentiment of the following text 'This is awesome'"],
title="Agent with MCP Tools",
description="This is a simple agent that uses MCP tools to answer questions.",
)
demo.launch()
finally:
mcp_client.disconnect()